# Q. What is this file?
# A. This file contains options which allow you to configure your multiworld experience while allowing
#    others to play how they want as well.
#
# Q. How do I use it?
# A. The options in this file are weighted. This means the higher number you assign to a value, the
#    more chances you have for that option to be chosen. For example, an option like this:
#
#    map_shuffle:
#      on: 5
#      off: 15
#
#    Means you have 5 chances for map shuffle to occur, and 15 chances for map shuffle to be turned
#    off.
#
# Q. I've never seen a file like this before. What characters am I allowed to use?
# A. This is a .yaml file. You are allowed to use most characters.
#    To test if your yaml is valid or not, you can use this website:
#        http://www.yamllint.com/
#    You can also verify that your Archipelago options are valid at this site:
#        https://archipelago.gg/check

# Your name in-game, limited to 16 characters.
#     {player} will be replaced with the player's slot number.
#     {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1.
#     {number} will be replaced with the counter value of the name.
#     {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1.
name: Player{number}

# Used to describe your yaml. Useful if you have multiple files.
description: Default Devil May Cry 3 Template

game: Devil May Cry 3
requires:
  version: 0.6.7 # Version of Archipelago required for this yaml to work as expected.
  game:
    Devil May Cry 3: 0.5.1 # Version of the world required for this yaml to work as expected.

Devil May Cry 3:
  ################
  # Game Options #
  ################
  progression_balancing:
    # A system that can move progression earlier, to try and prevent the player from getting stuck and bored early.
    # 
    # A lower setting means more getting stuck. A higher setting means less getting stuck.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 99
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-99: 0 # random value between 0 and 99
    disabled: 0 # equivalent to 0
    normal: 50 # equivalent to 50
    extreme: 0 # equivalent to 99

  accessibility:
    # Set rules for reachability of your items/locations.
    # 
    # **Full:** ensure everything can be reached and acquired.
    # 
    # **Minimal:** ensure what is needed to reach your goal can be acquired.
    full: 50
    minimal: 0

  random_adjudicators:
    # Randomizes Adjudicators in the game, changing their required weapon type
    'false': 50
    'true': 0

  adjudicator_rankings:
    # Set the max style rank for randomized adjudicators.
    # 
    # Leave at default to not change them (I can't recommend SS or SSS)
    unchanged: 50
    c_rank: 0
    b_rank: 0
    a_rank: 0
    s_rank: 0
    ss_rank: 0
    sss_rank: 0

  start_melee:
    # Set your starting melee weapon
    rebellion: 50
    cerberus: 0
    agni_and_rudra: 0
    nevan: 0
    beowulf: 0

  start_second_melee:
    # Set your second starting melee weapon
    rebellion: 0
    cerberus: 0
    agni_and_rudra: 0
    nevan: 0
    beowulf: 0
    none: 50

  start_gun:
    # Set your starting gun
    ebony_and_ivory: 50
    shotgun: 0
    artemis: 0
    spiral: 0
    kalina_ann: 0

  start_second_gun:
    # Set your starting gun
    ebony_and_ivory: 0
    shotgun: 0
    artemis: 0
    spiral: 0
    kalina_ann: 0
    none: 50

  randomize_skills:
    # Should weapon skills be items?
    'false': 50
    'true': 0

  randomize_gun_levels:
    # Should gun levels be items?
    'false': 50
    'true': 0

  death_link:
    # **DeathLink**: Standard DeathLink behavior.
    # 
    # **HurtLink**: Sends DeathLink messages out when you die. But any received DeathLink's will cause (Difficulty Dependent) damage rather than insta kill.
    # 
    # **None**: No death link features will be enabled
    none: 50
    deathlink: 0
    hurtlink: 0

  randomize_styles:
    # Add Dante's styles into the world as progressive upgrades. The starting style will be chosen at random unless one is specified via start inventory
    'false': 50
    'true': 0

  purple_orb_mode:
    # On: 10 Purple orbs will be added to the item pool (DT Item will be worth 0 runes if it is in the item pool)
    # 
    # Off: 7 Purple orbs will be added to the item pool as well as the Devil Trigger Item (Worth 3 DT Runes)
    'false': 50
    'true': 0

  devil_trigger_mode:
    # **On**: Devil Trigger item will be needed to access Devil Trigger (DT Item will be added to the item pool)
    # 
    # **Off**: Devil Trigger will be accessible upon reaching 3 runes
    'false': 50
    'true': 0

  initially_unlocked_difficulties:
    # What difficulties are unlocked when starting a new game (Normal is unlocked by default)
    ['Very Hard', 'Dante Must Die', 'Hard', 'Easy', 'Heaven or Hell']

  goal:
    # Which goal setting to use:
    # 
    # **Standard**: Beat M20 in linear order M1-M20
    # 
    # **All**: Beat all missions, all are unlocked at start
    # 
    # **Random Order**: Beat all missions in a random linear order
    standard: 50
    all: 0
    random_order: 0

  ################
  # Shop Options #
  ################
  shop_orb_checks:
    # Add checks to the store.
    # 
    # This includes both Blue and Purple Orbs
    'false': 50
    'true': 0

  auto_orb_hints:
    # What types of hints should be automatically created
    # 
    # * All will auto hint all orb purchases
    # * None will result in no hints
    all: 50
    none: 0

  shop_gun_checks:
    # Purchasing gun levels will send out checks
    # 
    # You will need the specific gun for the checks
    'false': 50
    'true': 0

  auto_gun_hints:
    # Gun Level Auto hinting behavior
    # 
    # * All: All gun level checks will be auto-hinted
    # * Obtained: Hint all levels when the gun is obtained
    # * None: No automatic hinting
    all: 50
    obtained: 0
    none: 0

  ###################
  # Mission Options #
  ###################
  mission_clear_rank:
    # What minimum rank is needed to give a mission's completed check.
    # 
    # **D** will be any and all ranks
    # 
    # **C, B, A, S** are self-explanatory
    # 
    # **SS** is a perfect S rank, all sub ranks must be S as well. (Only choose this if you are confident in your abilities)
    d_rank: 50
    c_rank: 0
    b_rank: 0
    a_rank: 0
    s_rank: 0
    ss_rank: 0

  mission_clear_difficulty:
    # What minimum difficulty is needed to give a mission's completed check.
    easy: 50
    normal: 0
    hard: 0
    very_hard: 0
    dante_must_die: 0
    heaven_or_hell: 0

  enabled_ss_rank:
    # If the SS Rank checks are added to the multiworld
    'false': 50
    'true': 0

  useful_ss_checks:
    # Allow excluded SS Rank Mission Clears to have useful items and not just filler
    'false': 50
    'true': 0

  check_ss_difficulty:
    # If SS Rank checks also check to see if you are on the minimum difficulty
    'false': 50
    'true': 0

  mission_shuffle:
    # **Grouped**: All 20 missions are divided into blocks of N missions. The order of these blocks is then randomized
    # 
    # **Pure RNG**: Leave it all up to chance. You may get Mission #1 as your first, or you may get Mission #20.
    # Not recommended for Synchronous games.
    # 
    # **Weighted**: Mission order is based on the provided weights
    weighted: 0
    grouped: 50
    rng: 0

  mission_weights:
    # Mission weight setting for the weighted mission order option
    # 
    # Bigger number means it's more likely to be picked near the beginning. Smaller number means it has less of a chance of being picked.
    # 
    # (If you don't know what to do, leave this alone)
    'Mission #1': 30
    'Mission #10': 20
    'Mission #11': 20
    'Mission #12': 20
    'Mission #13': 1
    'Mission #14': 20
    'Mission #15': 20
    'Mission #16': 20
    'Mission #17': 20
    'Mission #18': 5
    'Mission #19': 5
    'Mission #2': 30
    'Mission #3': 20
    'Mission #4': 20
    'Mission #5': 20
    'Mission #6': 20
    'Mission #7': 10
    'Mission #8': 20
    'Mission #9': 20

  mission_group:
    # Used for the "Grouped" Mission order setting
    # 
    # Set's how many mission "groups" there are
    # 
    # I.e 20/N where N is number of groups.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 4
    # Maximum value is 20
    5: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-4-20: 0 # random value between 4 and 20

  ###########################
  # Item & Location Options #
  ###########################
  exclude_locations:
    # Prevent these locations from having an important item.
    ['Mission #11 SS Rank', 'Mission #16 SS Rank', 'Mission #10 SS Rank', 'Mission #17 SS Rank', 'Mission #4 SS Rank', 'Mission #14 SS Rank', 'Mission #3 SS Rank', 'Mission #9 SS Rank', 'Mission #20 SS Rank', 'Mission #12 SS Rank', 'Mission #7 SS Rank', 'Mission #8 SS Rank', 'Mission #6 SS Rank', 'Mission #19 SS Rank', 'Mission #13 SS Rank', 'Mission #5 SS Rank', 'Mission #1 SS Rank', 'Mission #18 SS Rank', 'Mission #15 SS Rank', 'Mission #2 SS Rank']

  local_items:
    # Forces these items to be in their native world.
    []

  non_local_items:
    # Forces these items to be outside their native world.
    []

  start_inventory:
    # Start with the specified amount of these items. Example: "Bomb: 1"
    {}

  start_hints:
    # Start with these item's locations prefilled into the ``!hint`` command.
    []

  start_location_hints:
    # Start with these locations and their item prefilled into the ``!hint`` command.
    []

  priority_locations:
    # Prevent these locations from having an unimportant item.
    []

  item_links:
    # Share part of your item pool with other players.
    []

  plando_items:
    # Generic items plando.
    []
